define("googleMap",["lodash","coreUtils","santa-components","componentsCore","skins","reactDOM","components"],function(e,t,o,n,a,i,r){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var a=t[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,o),a.l=!0,a.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)o.d(n,a,function(t){return e[t]}.bind(null,a));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=769)}({0:function(t,o){t.exports=e},1:function(e,o){e.exports=t},18:function(e,t){e.exports=r},2:function(e,t){e.exports=o},3:function(e,t){e.exports=n},5:function(e,t){e.exports=a},6:function(e,t){e.exports=i},769:function(e,t,o){var n,a;n=[o(2),o(0),o(1),o(6),o(18),o(5),o(770),o(771),o(3),o(772)],void 0===(a=function(e,t,o,n,a,i,r,s,p,c){"use strict";var d=["da","de","en","es","fr","it","ja","ko","nl","no","pl","pt","ru","sv","tr"],u=14,l={pt:"pt-BR"},m=function(e){var o=e.compProp.language,n=e.userLanguage,a="userLang"===o?n:o,i=t.includes(d,a)?a:"en";return l[i]||i};function f(e,o){if(!t.get(o,"data.locations"))return{zoom:u,center:{},locations:[],compData:t.get(o,"data"),compProp:t.get(o,"props"),componentPreviewState:t.get(o,"componentPreviewState"),componentViewMode:t.get(o,"componentViewMode"),isPreviewMode:t.get(o,"isPreviewMode")};var n=t.get(e,["zoom"],o.props.zoom||u),a=o.data.locations[o.data.defaultLocation]||{};return{zoom:n,center:t.get(e,["center"],{longitude:a.longitude,latitude:a.latitude}),locations:t.cloneDeep(o.data.locations),compData:o.data,compProp:o.props,componentPreviewState:o.componentPreviewState,componentViewMode:o.componentViewMode,isPreviewMode:o.isPreviewMode}}var g={displayName:"GoogleMap",mixins:[p.mixins.skinBasedComp,e.mixins.compStateMixin(f)],statics:{compSpecificIsDomOnlyOverride:function(){return!1},behaviors:{getVisibleMarkers:{methodName:"getVisibleMarkers"},setMapZoom:{methodName:"setMapZoom",params:["zoom"]},setMapCenter:{methodName:"setMapCenter",params:["longitude","latitude"]}}},propTypes:{compData:e.santaTypesDefinitions.Component.compData.isRequired,compProp:e.santaTypesDefinitions.Component.compProp.isRequired,structure:e.santaTypesDefinitions.Component.structure.isRequired,santaBase:e.santaTypesDefinitions.santaBase.isRequired,cannotHideIframeWithinRoundedCorners:e.santaTypesDefinitions.mobile.cannotHideIframeWithinRoundedCorners.isRequired,userLanguage:e.santaTypesDefinitions.WixUserSantaTypes.userLanguage.isRequired,componentPreviewState:e.santaTypesDefinitions.RenderFlags.componentPreviewState,isPreviewMode:e.santaTypesDefinitions.isPreviewMode.isRequired,isResponsive:e.santaTypesDefinitions.RendererModel.isResponsive,componentViewMode:e.santaTypesDefinitions.RenderFlags.componentViewMode,isExperimentOpen:e.santaTypesDefinitions.isExperimentOpen,getExperimentValue:e.santaTypesDefinitions.getExperimentValue,locations:e.santaTypesDefinitions.GoogleMap.locations,reportBI:e.santaTypesDefinitions.reportBI.isRequired},getInitialState:function(){var e={};return this.props.cannotHideIframeWithinRoundedCorners()&&(e.$corners="squared"),this.restartMap(this.props),t.assign(f(null,{props:this.props.compProp,data:this.props.compData,locations:t.cloneDeep(this.props.locations),compData:this.props.compData,compProp:this.props.compProp,componentPreviewState:this.props.componentPreviewState,componentViewMode:this.props.componentViewMode,isPreviewMode:this.props.isPreviewMode}),e)},componentDidMount:function(){this.iFrameNode=n.findDOMNode(this.refs.iframe),window.addEventListener("message",this.googleMapsMessageHandler),this.iFrameNode.onload=function(){var e=s(this.props);this.iFrameNode.contentWindow.postMessage({type:"SET_INITIAL_LOCATIONS",data:JSON.stringify(e)},"*")}.bind(this)},googleMapsMessageHandler:function(e){try{var t=JSON.parse(e.data);switch(t.type){case"MAP_CLICKED":this.onMapClicked(t.data);break;case"MARKER_CLICKED":this.onMarkerClicked(t.data);break;case"ZOOM_UPDATED":this.zoomChanged(t.data);break;case"CENTER_UPDATED":this.centerChanged(t.data);break;case"LOADING_START":this.onLoadingStart(t.id);break;case"LOADING_FINISH":this.onLoadingFinish(t.id);break;default:return}}catch(e){return}},componentWillUnmount:function(){window.removeEventListener("message",this.googleMapsMessageHandler)},setMapZoom:function(e,t){var o=this;this.setState({zoom:e}),new Promise(function(t){window.addEventListener("message",function(e){try{"SET_ZOOM_FINISHED"===JSON.parse(e.data).type&&t()}catch(e){return}}),n.findDOMNode(o.refs.iframe).contentWindow.postMessage({type:"SET_ZOOM",data:e},"*")}).then(function(){t()})},setMapCenter:function(e,t,o){var a=this;this.setState({center:{longitude:e,latitude:t}}),new Promise(function(o){window.addEventListener("message",function(e){try{var t=JSON.parse(e.data);"SET_CENTER_FINISHED"===t.type&&o(t.data)}catch(e){return}}),n.findDOMNode(a.refs.iframe).contentWindow.postMessage({type:"SET_CENTER",data:JSON.stringify({longitude:e,latitude:t})},"*")}).then(function(){o()})},centerChanged:function(e){this.setState({center:e})},zoomChanged:function(e){this.setState({zoom:e})},getVisibleMarkers:function(e){var t=this;new Promise(function(e){window.addEventListener("message",function(t){try{var o=JSON.parse(t.data);"MARKERS"===o.type&&e(o.data)}catch(e){return}}),n.findDOMNode(t.refs.iframe).contentWindow.postMessage({type:"GET_MARKERS"},"*")}).then(function(t){e(t)})},onMapClicked:function(e){this.handleAction(o.siteConstants.ACTION_TYPES.GOOGLE_MAP_CLICKED,e)},onMarkerClicked:function(e){e=t.assign(e,t.pick(e.location,["longitude","latitude"])),this.handleAction(o.siteConstants.ACTION_TYPES.GOOGLE_MAP_MARKER_CLICKED,e)},componentWillReceiveProps:function(e){var o=s(e),n=s(t.assign({},this.state,{compData:this.prevCompData}));if(!t.isEqual(n,o)){if(m(this.props)!==m(e))return void this.restartMap(e);var a=this.shouldKeepMarkers(e.compData.locations);this.updateMapParams(o,a),this.setState({locations:t.cloneDeep(e.locations),compData:e.compData,compProp:e.compProp,componentPreviewState:e.componentPreviewState,componentViewMode:e.componentViewMode,isPreviewMode:e.isPreviewMode})}},shouldKeepMarkers:function(e){return t.isEqual(this.state.locations,e)},updateMapParams:function(e,o){n.findDOMNode(this.refs.iframe).contentWindow.postMessage(JSON.stringify(t.assign({},e,{shouldKeepMarkers:!!o})),"*")},restartMap:function(e){this.iframeUrl=function(e){var n=s(e),a=t.assign(t.pick(n,["defaultLocation","showZoom","showStreetView","showMapType","fullscreenControl"]),{id:e.compData.id}),i=t.reduce(a,function(e,t,o){return e.concat("&".concat(o,"=").concat(t))},""),r=e.getExperimentValue("googleMapsClientKey"),p=r?"&clientKey=".concat(r):"",c="language=".concat(m(e)).concat(i).concat(p);return o.urlUtils.joinURL(e.santaBase||"","static/external/googleMap.html?".concat(c))}(e),this.a11yTitle=o.translationsLoader.getTranslation("component_label",m(e),"COMPONENT_LABEL_googleMapsTitle")},getSkinProperties:function(){return this.prevCompData=t.cloneDeep(this.state.compData),{"":{tabIndex:0,title:this.a11yTitle,"aria-label":this.a11yTitle,"data-src":this.iframeUrl,tagName:"wix-iframe"},mapContainer:{key:"mapContainer",children:[e.utils.createReactElement("iframe",{ref:"iframe","data-src":this.iframeUrl,width:"100%",height:"100%",frameBorder:"0",allowFullScreen:!0,scrolling:"no",title:this.a11yTitle,"aria-label":this.a11yTitle})]}}},onLoadingStart:function(e){var t=this.props,o=t.compData,n=t.reportBI;e===o.id&&n(c.GOOGLE_MAPS_START_TO_LOAD,{appName:"google-maps"})},onLoadingFinish:function(e){var t=this.props,o=t.compData,n=t.reportBI;e===o.id&&n(c.GOOGLE_MAPS_FINISHED_LOAD,{appName:"google-maps"})}};return p.compRegistrar.register("wysiwyg.viewer.components.GoogleMap",g),a.translationRequirementsChecker.registerCommonLanguageRequirement("wysiwyg.viewer.components.GoogleMap",function(e,o){return t.get(o,["properties","language"])}),i.skinsMap.addBatch(r),g}.apply(t,n))||(e.exports=a)},770:function(e,t,o){var n,a,i;"undefined"!=typeof self&&self,a=[],void 0===(i="function"==typeof(n=function(){"use strict";var e={"wysiwyg.viewer.skins.GoogleMapSkin":{react:[["div","mapContainer",[],{}]],css:{'%[data-state~="squared"],%[data-state~="squared"] %mapContainer':"border-radius:0;","%mapContainer":"position:absolute;top:0;right:0;bottom:0;left:0;"}},"wysiwyg.viewer.skins.map.GoogleMapDefault":{react:[["div","mapContainer",[],{}]],params:{brd:"BG_COLOR_ALPHA",rd:"BORDER_RADIUS",shd:"BOX_SHADOW",brw:"SIZE"},paramsDefaults:{brd:"color_15",rd:"0",shd:"0 1px 4px rgba(0, 0, 0, 0.6)",brw:"0"},css:{'%[data-state~="squared"],%[data-state~="squared"] %mapContainer':"border-radius:0;","%":"background:[brd];[rd] [shd]","%mapContainer":"display:inline-block;overflow:hidden;[rd] position:absolute;top:[brw];right:[brw];bottom:[brw];left:[brw];-webkit-mask-image:-webkit-radial-gradient(circle, #fff, #000);mask-image:radial-gradient(circle, #fff, #000);"}},"wysiwyg.viewer.skins.map.GoogleMapLiftedShadow":{react:[["div",null,["_left","_shd"],{}],["div",null,["_right","_shd"],{}],["div","mapContainer",[],{}]],params:{tdr:"URL",brd:"BG_COLOR_ALPHA",rd:"BORDER_RADIUS",shd:"BOX_SHADOW",brw:"SIZE"},paramsDefaults:{tdr:"BASE_THEME_DIRECTORY",brd:"color_15",rd:"0",shd:"0 1px 4px rgba(0, 0, 0, 0.6)",brw:"0"},css:{'%[data-state~="squared"],%[data-state~="squared"] %mapContainer':"border-radius:0;","%_shd":"position:absolute;bottom:-26px;width:165px;height:26px;background-image:url([tdr]liftedshadow_medium.png);background-repeat:no-repeat;","%_left":"left:-20px;background-position:0 0;","%_right":"right:-20px;background-position:100% 0;","%":"background-color:[brd];[rd] [shd]","%mapContainer":"position:absolute;top:[brw];right:[brw];bottom:[brw];left:[brw];overflow:hidden;"}},"wysiwyg.viewer.skins.map.GoogleMapSloppy":{react:[["div",null,["_brd","_one"],{}],["div",null,["_brd","_two"],{}],["div","mapContainer",[],{}]],params:{tdr:"URL"},paramsDefaults:{tdr:"BASE_THEME_DIRECTORY"},css:{'%[data-state~="squared"],%[data-state~="squared"] %mapContainer':"border-radius:0;","%_brd":"background-image:url([tdr]sloppyframe.png);background-repeat:no-repeat;position:absolute;top:0;right:0;bottom:0;left:0;","%_one":"background-position:0 0;bottom:3px;right:3px;","%_two":"background-position:100% 100%;top:3px;left:3px;","%mapContainer":"position:absolute;top:9px;bottom:9px;left:9px;right:9px;"}}};return e})?n.apply(t,a):n)||(e.exports=i)},771:function(e,t,o){var n,a;n=[o(0),o(1)],void 0===(a=function(e,t){"use strict";var o=14;function n(e){if(e.pinIcon||e.pinColor)return e.pinColor?{path:e.pinIcon,fillColor:e.pinColor,strokeColor:e.pinColor,fillOpacity:1,scale:.5}:function(e){if(e.endsWith(".webp"))try{var o=e.match(/media\/[^\/]+/)[0].split(".")[1];e=e.replace(/.webp$/,".".concat(o))}catch(o){t.integrations.ravenUtils.captureError("could not fix this url: ".concat(e))}return e}(e.pinIcon)}return function(a){return e.transform({locations:(p=a.locations,e.map(p,function(t){return e.assign(t,{icon:n(t)})})),defaultLocation:(i=a.componentPreviewState,r=a.isPreviewMode,s=a.compData.defaultLocation,i&&r?e.toNumber(i):s||0),mapType:a.compProp.mapType,mapInteractive:a.compProp.mapDragging,showZoom:a.compProp.showZoom,center:a.compProp.center,zoom:e.isNumber(a.compProp.zoom)?a.compProp.zoom:o,showDirectionsLink:a.compProp.showDirectionsLink,showStreetView:a.compProp.showStreetView,showMapType:a.compProp.showMapType,componentViewMode:a.componentViewMode,mapStyle:JSON.stringify(a.compData.mapStyle||[]),isPreview:a.isPreviewMode},function(o,n,a){o[a]=e.isString(n)?t.xssUtils.filterHtmlString(n):n},{});var i,r,s,p}}.apply(t,n))||(e.exports=a)},772:function(e,t,o){var n,a;n=[o(773)],void 0===(a=function(e){"use strict";return e}.apply(t,n))||(e.exports=a)},773:function(e){e.exports=JSON.parse('{"GOOGLE_MAPS_START_TO_LOAD":{"eventId":14,"src":72,"sampleRatio":1,"adapter":"performance","params":{"appName":"appName"}},"GOOGLE_MAPS_FINISHED_LOAD":{"eventId":11,"src":72,"sampleRatio":1,"adapter":"performance","params":{"appName":"appName"}}}')}})}); //# sourceMappingURL=googleMap.min.js.map